package cn.kgc.spring.config;

import com.mysql.jdbc.Driver;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.sql.Connection;
import java.sql.DriverManager;

/**
 * @author 课工场
 * @date 2024/4/28
 * @description 通过配置类实现对象托管
 */
@Configuration   // 标识当前类是配置类  当前类的作用类似xml配置文件
public class BeansConfig {


    /*
     *  通过定义方法 实现对象的托管
     *     1.返回值类型是托管对象的类型
     *     2. 方法名是对象在spring容器中的key
     *     3. 可以使用@Bean("u") 注解指定key  优先级高
     *
     * */
    // @Bean("u")
    // public User user() {
    //     User user = new User();
    //     user.setBirth(new Date());
    //     return user;
    // }

    /*
    *   获取数据库连接对象
    *
    * */
    @Bean
    public Connection  connection(){
        try {
            Driver driver = new Driver();
            DriverManager.registerDriver(driver);
            String username = "root";
            String password="root";
            String url = "jdbc:mysql:///java2424";
            Connection connection = DriverManager.getConnection(url, username, password);
            return connection;
        }catch (Exception e){
            throw new RuntimeException();
        }
    }

}
